import { get } from '~/utils/request';
import type { 
  IPaginationResponse, 
  IAuditLog,
  IQueryAuditLog
} from '@nbase/shared';

/**
 * 审计日志信息
 */
export type AuditLog = IAuditLog;

/**
 * 查询审计日志请求参数
 */
export type QueryAuditLogDto = IQueryAuditLog;

/**
 * 审计日志服务
 *
 * 注意：审计日志只提供查询功能，不提供创建、更新、删除功能
 * 审计日志由系统自动记录，保证审计记录的完整性和可追溯性
 */
export const auditLogService = {
  /**
   * 获取审计日志列表
   */
  getList(params?: QueryAuditLogDto): Promise<IPaginationResponse<AuditLog>> {
    return get('/system/audit-log', { params });
  },

  /**
   * 获取审计日志详情
   */
  getDetail(id: string): Promise<AuditLog> {
    return get(`/system/audit-log/${id}`);
  },
};

